package com.hsgene.gateway.service.api;

import com.hsgene.common.util.result.ApiResult;
import com.hsgene.gateway.service.api.impl.SecurityServiceImpl;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 安全服务
 *
 * @author wangbing
 * @version 1.0, 2018/7/11
 */
@FeignClient(name = "ms-mod-security", path = "/security", fallback = SecurityServiceImpl.class)
public interface SecurityService {

    /**
     * 解密指定加密数据
     *
     * @param encryptData 加密数据
     * @return 解密后的明文
     */
    @GetMapping("rsa/decrypt")
    ApiResult<String> rsaDecrypt(@RequestParam("encryptData") String encryptData);

    /**
     * 加密指定原始数据
     *
     * @param originData 原始数据
     * @return 加密后密文
     */
    @GetMapping("rsa/encrypt")
    ApiResult<String> rsaEncrypt(@RequestParam("origin") String originData);
}
